﻿using System;
using System.Collections.Generic;
using System.ComponentModel.Composition;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CafeOnline.MvcFramework.Interfaces;

namespace CafeOnline.MvcFramework.Grid {
    [MetadataAttribute]
    [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
    public class ColumnMetadataAttribute : ExportAttribute, IColumnFactoryMetadata {
        public ColumnMetadataAttribute(string columnName)
            : base(typeof(IColumnFactory)) {
            ColumnName = columnName;

        }
        public string GridType {
            get;
            set;
        }

        public string ColumnName {
            get;
            private set;
        }

        public string LabelResourceKey {
            get;
            set;
        }

        public string Label {
            get;
            set;
        }

        public string SortingName {
            get;
            set;
        }

        public int Order {
            get;
            set;
        }

        public int Priority {
            get;
            set;
        }

        public bool Hidden {
            get;
            set;
        }

        public bool Excluded {
            get;
            set;
        }
    }
}
